/*
                    FrameGroup Class Definition
*/

#ifndef FRAMEGROUP_H
#define FRAMEGROUP_H

#include <vector>
#include "Frame.h"
#include <stdio.h>

using namespace std;

class FrameGroup
{
    public:
        FrameGroup();
        ~FrameGroup();

        int parseInput(const SDL_Event& event);

        int BlitToSurface(SDL_Surface *surface);

        int AddFrame(Frame *frmNew, const string& strName);

        int GetFrameIndex(const string& strName);

        int SetFrameFocus(const string& strName);

        vector<Frame*> Frames;

    private:

        int iFocus;

        int HandleMouseDown(int iMouseX, int iMouseY);
        int HandleMouseUp(int iMouseX, int iMouseY);
        int HandleMouseMotion(int iMouseXREL, int iMouseYREL);
        int HandleWindowResize(int iWindowWidth, int iWindowHeight);
        int HandleKeyDown(const string& strKeyName, Uint16 UNICODEvalue);
};

#endif
